package com.hzy.service.impl;

import com.hzy.dao.UserDao;
import com.hzy.dao.impl.UserDaoImpl;
import com.hzy.factory.UserDaoFactory;
import com.hzy.pojo.User;
import com.hzy.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @Package: com.hzy.service.impl
 * @ClassName: UserServiceImpl
 * @Author: 862982795
 * @CreateTime: 2021/07/02 17:06
 * @Description:用户业务类，实现对 User 功能的业务管理
 */
@Service("userService")
public class UserServiceImpl implements UserService {
    // 通过接口类型的引用，对具体实现类解耦合
    @Autowired
    private UserDao userDao;
    // 无参构造
    public UserServiceImpl() {
    }
    // 用于为 dao 属性
    public UserServiceImpl(UserDao userDao) {
        this.userDao = userDao;
    }

    // dao 属性的 setter 访问器，会被 Spring 调用，实现依赖注入
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

    /**
     * 保存用户信息
     */
    @Override
    public void save(User user) {
        // 调用 UserDao 的方法保存用户信息
        userDao.save(user);
    }
}
